﻿//  -------------------- iSharePoint -------------------- //
// 
//  Company:	IT Complex, LLC
//  Project:	Smart.Common
//  File name:	XmlRuleCondition.cs
//  Developer:	Solomatov Igor
//  Created:	15.04.2012
// 
//  -------------------- iSharePoint -------------------- //

using System;
using System.Collections.Generic;

namespace Smart.Common.Rules
{
	public class XmlRuleCondition : IRuleCondition
	{
		/// <summary>
		/// Left operand
		/// </summary>
		public string Left { get; set; }

		/// <summary>
		/// Operator between Left and Right operands
		/// </summary>
		public ComparisonOperator Operator { get; set; }

		/// <summary>
		/// Right operand
		/// </summary>
		public string Right { get; set; }

		/// <summary>
		/// Function (if Operator is function)
		/// </summary>
		public XmlRuleConditionFunction Function { get; set; }

		/// <summary>
		/// Children (if Operator is group operator)
		/// </summary>
		public List<IRuleCondition> Children { get; set; }

		/// <summary>
		/// Initialize empty XmlRuleCondition
		/// </summary>
		public XmlRuleCondition()
		{
		}
	}
}